# autor: Fabiano A. Lima
# esse arquivo contém o código usado para obter os dados dos sites dos veículos
# usados no estudo. Como esses sites podem sofrer alteração, reocmenda-se que, para fins de 
# reprodutibilidade, se use os arquivos salvos quando da elaboração dos estudo. 

library(tidyverse)
library(rvest)
library(urltools)
library(lubridate)

source("pesquisador.r", encoding = "utf8")
source("gera_tabela.r", encoding = "utf8")

folha <- folha() 
o_globo <- o_globo()
data_ini <- "01/03/2009"
data_fim <-"31/07/2011"
# Baixando dados folha

operacao <- "castelo areia"
magistrado <- "fausto sanctis"
outros_termos <- "operacao juiz criminal policia justica prisao"

nome_arq <- paste(operacao, magistrado)


# Monta tabela básica somente com sumário das buscas (resultados totais)
totais_o_globo <- c(
  # testes dos critérios de busca
  o_globo$busca_texto("", operacao, outros_termos, "", data_ini, data_fim, T, T)$total,
  o_globo$busca_texto("", paste(operacao, magistrado), "", "", data_ini, data_fim, T, T)$total,
  o_globo$busca_texto("", magistrado, "", "", data_ini, data_fim, T, T)$total,
  o_globo$busca_texto("", magistrado, "", operacao, data_ini, data_fim, T, T)$total
)


totais_folha <- c(
  #testes dos critérios de busca
  folha$busca_texto(sprintf("todos:%s, qualquer:%s", operacao, outros_termos), data_ini, data_fim, T, T)$total,
  folha$busca_texto(sprintf("todos:%s %s, qualquer:%s", operacao, magistrado, outros_termos), data_ini, data_fim, T, T)$total,
  folha$busca_texto(sprintf("todos:%s", magistrado), data_ini, data_fim, T, T)$total,
  folha$busca_texto(sprintf("todos:%s, nenhum:%s", magistrado, operacao), data_ini, data_fim, T, T)$total
)

criterios <- c("Operação", "Operação e Magistrado", "Magistrado", "Magistrado sem Operação")

# Consolida resultados em dataframe único para salvar em arquivo

tbl_citacoes <- tibble(
  "Critério" = criterios,
  "Folha" = totais_folha,
  "O Globo" = totais_o_globo
)

saveRDS(tbl_citacoes, sprintf("./data/%s - citacoes.rds", nome_arq))
write.csv(tbl_citacoes, sprintf("./data/%s - citacoes.csv", nome_arq))

# Busca dados detalhados da Folha e gera arquivos
folha_fs_sem_operacao <- folha$busca_texto(sprintf("todos:%s, nenhum:%s", magistrado, operacao), data_ini, data_fim)
saveRDS(folha_fs_sem_operacao, sprintf("./data/%s - folha.rds", nome_arq))
write_lines(folha_fs_sem_operacao$resultados, sprintf("./data/%s - folha.txt", nome_arq))

# Buscando dados detalhados de O Globo e gera arquivos
o_globo_fs_sem_operacao <- o_globo$busca_texto("", magistrado, "", operacao, data_ini, data_fim)
saveRDS(o_globo_fs_sem_operacao, sprintf("./data/%s - o globo.rds", nome_arq))
write_lines(o_globo_fs_sem_operacao$resultados, sprintf("./data/%s - o globo.txt", nome_arq))
